The present invention relates to a CDMA receiver, i.e. a receiver with Code Division Multiple Access. It finds application in telecommunications and notably in mobile radio systems.
The advantages of CDMA communications no longer need to be demonstrated. It is known that this technique consists of spreading a signal by a pseudo-random sequence, allocating to each user his own sequence, the allocated sequences being orthogonal to one another, transmitting all of the signals thus spread and then, on reception, narrowing down the received signal with the help of the sequences used at transmission and finally reconstituting the signals pertinent to each user.
If the various sequences of the spreading were strictly orthogonal to each other and if the propagation signals were perfect, the signals pertinent to each user would be reconstituted without any error. However, in reality, things are not so simple and each user interferes to a greater or lesser extent with the others.
In order to reduce these effects, referred to as multiple access interference it has been necessary to envisage correction means arranged in the receiver.
By way of example, one may describe the receiver that is the subject of U.S. Pat. No. 5,553,062.
FIG. 1 appended substantially reproduces FIG. 1 of the document quoted. The circuit shown allows one to supply a nominal signal designated {circumflex over (d)}1, belonging to a first user. To do this, it uses an input circuit 41, receiving a signal R(t) from the multipliers 51, 61, . . . , 71 connected to the generators of the pseudo-random sequences (PRS) 52, 62, . . . , 72, which reproduce the sequences used for transmission by the various users, delay circuits 53, 63, . . . , 73, amplifiers (AMP) 54, 64, . . . , 74, and multipliers 55, 65, . . . , 75. If one assumes that there are K users, there are K channels of this type arranged in parallel. The last Kxe2x88x921 channels permit the extraction of Kxe2x88x921 signals pertinent to Kxe2x88x921 channels and then to respread these Kxe2x88x921 signals by the corresponding pseudo-random sequences. One can then subtract from the general input signal R(t) all of these respread Kxe2x88x921 signals. To do this, a delay line 48 is provided in order to hold back the input signal R(t) for the duration of the formation of the respread Kxe2x88x921 signals, the respread Kxe2x88x921 signals and the delayed input signal being subsequently applied to a subtractor 150. This supplies a global signal from which the signals belonging to the Kxe2x88x921 users other than the first one, have been removed. One can then correlate this signal with the pseudo-random sequence belonging to the first user in a multiplier 147, which receives the pseudo-random sequence supplied by the generator 52, a sequence suitably delayed by a delay line 53. An amplifier 146 then supplies the estimated data {circumflex over (d)}1, pertinent to the first user.
This structure can be repeated K times in order to process the K signals pertinent to the K users. Hence K first estimations of the data {circumflex over (d)}1, {circumflex over (d)}2, . . . , {circumflex over (d)}k are obtained.
This procedure can be repeated in a second interference suppression stage and so on. FIG. 2 appended shows, diagrammatically s stages, the first E0 being, strictly speaking, an ordinary correlation stage, the others E1, . . . , Ei, . . . , Esxe2x88x921 being interference suppression stages.
One can still further improve the performance of such a receiver by using, not the last estimation obtained, but a weighted mean of the various estimates provided. This amounts to allocating a weight wi to the estimation {circumflex over (d)}1, and forming the sum of the Wi{circumflex over (d)}i signals. In FIG. 2, it can be seen that all the signals supplied by stage E0 are multiplied by a coefficient w0 in a multiplier M0, all the signals supplied by stage E1 are multiplied by a coefficient w1 in a multiplier M1, all the signals supplied by stage Ei are multiplied by a coefficient wi in a multiplier Mi, and all the signals supplied by the final stage Esxe2x88x921 by a coefficient wsxe2x88x921 in a multiplier Msxe2x88x921. An adder ADD then forms the sum of the signals supplied by the multipliers.
FIG. 2 also allows one to make clear certain notations appropriate to this technique. At the output of a stage, K signals are to be found corresponding to K users. Rather than individually marking these signals one can consider, in a more synthetic way, that they are the K components of a xe2x80x9cvectorxe2x80x9d. At the output of stage Ei one will find K signals which are the K components of a vector designated {overscore (Z)}i. At the output of the multipliers M0, M1, . . . , Mi, . . . , Msxe2x88x921, one will therefore find, with this synthetic notation, vectors w0{overscore (Z)}0, . . . , w1{overscore (Z)}1, . . . , wi{overscore (Z)}i, . . . , wsxe2x88x921{overscore (Z)}sxe2x88x921. The output from the adder will therefore be designated {overscore (Z)} and one can write:                               Z          _                =                              ∑                          i              =              0                                      s              -              1                                ⁢                                    w              i                        ⁢                                          Z                _                            i                                                          (        1        )            
There remains the question of determining the weighting coefficients wi. In the document U.S. Pat. No. 5,553,062 already mentioned, an empirical law wi=1/2i was proposed (column 12, line 30) without any justification. This amounts to weighting the outputs from the stages in a decreasing way.
Furthermore, the article by S. MOSHAVI et al., entitled xe2x80x9cMultistage Linear Receivers for DS-CDMA Systemsxe2x80x9d published in the magazine xe2x80x9cInternational Journal of Wireless Information Networksxe2x80x9d, vol. 3, No. 1, 1996, pages 1-17, takes up certain ideas from the patent U.S. Pat. No. 5,553,062 already mentioned and develops the theory of this type of receiver. It also proposes an optimization of the weighting coefficients.
Without going into the details of this theory, which is complex and would depart from the context of this invention, one can summarize it in the following way.
If each user only transmitted a single binary signal (or bit), one would find, in the receiver, signals including, for each user, the bit which is pertinent to him, to which would be added the parasitic interference signals due to the presence of other users. At the output from each stage, one would find a group of K bits that can be considered as the K components of a vector. At the output from the following stage, one would again find K signals and one would be able to characterize the transfer function of the stage by a matrix of K lines by K columns, the diagonal elements of this matrix would be the autocorrelation coefficients and the other elements, intercorrelation coefficients between different users.
In practice, however, the transmitted signal does not comprise one single bit but N bits, so that the values in question are no longer of dimension K but of dimension NK. The transfer matrix is then a matrix of NK lines and NK columns.
If one designates {overscore (d)} the data vector (which has NK components), and the vector at the output from the first decorrelation stage (or matched filtering stage) is designated {overscore (y)}mf (the index mf referring to the matched filtering function), one may write, ignoring the noise,
{overscore (y)}mf=R{overscore (d)}
where R is an NK by NK correlation matrix. The matrix R can be broken down into K by K sub-matrices, all of which are identical if the users use the same broadcasting code for all the bits of the total message. However, this is not necessarily so in all cases.
In a precise way, for a bit in row i, the coefficient for line j and for column k of the correlation matrix is of the form:
Pj.k (i)=∫rjTbxe2x88x92xcfx84jxcex1j (txe2x88x92xcfx84j)ak(txe2x88x92xcfx84kxe2x88x92iTb)dt
where aj and ak are the values (+1 or xe2x88x921) of the pulses (or xe2x80x9cchipxe2x80x9d) of the pseudo-random sequences, Tb is the duration of a bit, xcfx84j and xcfx84k are delays.
Each stage of interference suppression repeats the transformation operated by the matrix R, so that at the output of stage E1 one finds a signal R{overscore (y)}mf, and at the output from the ith stage, a signal Ri{overscore (y)}mf.
If the weighted sum of the signals supplied is processed by all the stages of the receiver, one obtains an estimation {overscore (d)} of the data in the form:                               d          _                =                              ∑                          i              =              0                                      s              -              1                                ⁢                                    w              i                        ⁢                          R              i                        ⁢                                          y                _                            mf                                                          (        2        )            
where s is the total number of stages, one being a normal filtering stage and sxe2x88x921 interference suppression stages.
There are particular detector circuits which, in theory, minimize the errors committed in the transmission and which are called Minimum Mean Square Error Detectors or MMSE detectors for short. For these detectors, the matrix for passage between the input and the output is:
[R+N0I]xe2x88x921
where I is a unit matrix of the same rank as R, and N0 the spectral density of noise power. If one wishes to produce a receiver providing performance close to that of an ideal receiver, the weighting coefficients wi must be chosen in such a way that the weighted sum is as close as possible to the inverse of the matrix [R+N0I]:                                           ∑                          i              =              0                                      s              -              1                                ⁢                                    w              i                        ⁢                          R              i                                      ≅                              [                          R              +                                                N                  0                                ⁢                I                                      ]                                -            1                                              (        3        )            
The weighted sum is precisely the quantity formed by the circuit in FIG. 2.
This relationship between matrices can be transposed into several equations using values pertinent to the matrices concerned. It is known that, for certain conditions, which are in general fulfilled in the domain in question, one can transform a matrix into a matrix where the only elements not zero are those of the diagonal, elements which are the values that are pertinent to the matrix. Each of the matrices in equation (3) being from row NK, there are in general NK pertinent values, that one can designate xcexj. Each matrix of equation (3) having been thus diagonalized, one obtains NK equations for the pertinent NK values. One will seek therefore, for each pertinent value, to make the approximation:                                           ∑                          i              =              0                                      s              -              1                                ⁢                                    w              i                        ⁢                          λ              j              i                                      ≅                  1          /                      (                                          λ                j                            +                              N                0                                      )                                              (        4        )            
Therefore one is in the presence of a polynomial expansion in xcexj of degree sxe2x88x921. For each xcexj one obtains an equation in xcexj where the unknown is wi. If the number of stages s is equal to the number of pertinent values NK, then one has NK equations with NK unknown values of wi which one would be able to resolve. However, in practice, the number of stages s is very much lower than the number NK so that the number of unknowns is very much lower than the number of equations. One cannot therefore satisfy all these equations simultaneously and one must therefore be content with an approximation.
The article by S. MOSHAVI et al. already mentioned proposes a particular choice criterion based on the following considerations. The error made between the weighted sum and the reciprocal of xcexj+N0 being designated ej, the article suggests that one should not consider this error but its square weighted by a function that depends on the relevant value of xcexj and of the noise N0 and to minimize the sum of these weighted errors for all the pertinent values. In other words, it is suggested that one minimizes the quantity:                               ∑                      j            =            0                                NK            -            1                          ⁢                              h            ⁡                          (                                                λ                  j                                ·                                  N                  0                                            )                                ⁢                      e            j            2                                              (        5        )            
where h (xcexj.N0) is the weighting function with                               e          j                =                                            ∑                              j                =                0                                            s                -                1                                      ⁢                                          w                1                            ⁢                              λ                j                i                                              -                      1            /                          (                                                λ                  j                                +                                  N                  0                                            )                                                          (        6        )            
For various reasons that are explained in the article mentioned, the authors chose as the weighting function, a quadratic function xcexj2+N0xcexj, which means that the large pertinent values are favored.
The objective of this invention is to improve this technique by making a different choice for the weighting function, the aim being to reduce further the error made on the transmission of the data.
To this end, the invention recommends using, as the weighting function, the frequency distribution of the relevant values, which will be designated p(xcex)and which is the function that gives the number of pertinent values contained in a given interval.
Using the previous notation, this comes down to minimizing the quantity:                               ∑                      j            =            0                                NK            -            1                          ⁢                                            p              ⁡                              (                λ                )                                      ⁡                          [                                                                    ∑                                          j                      =                      0                                                              s                      -                      1                                                        ⁢                                                            w                      i                                        ⁢                                          λ                      j                      i                                                                      -                                  1                                                            λ                      j                                        +                                          N                      0                                                                                  ]                                2                                    (        7        )            
In a precise way, the subject of this invention is a receiver for Code Division Multiple Access transmission through CDMA codes, this transmission being accessible to a plurality of K users each transmitting a message made up of a plurality of N binary data, each set of data pertinent to a user being transmitted after spectrum spreading by a pseudo-random binary sequence pertinent to this user, this receiver comprising s stages in series, of which
a first reception stage of a global signal corresponding to the whole of the signals transmitted by the K users, this first stage comprising K channels in parallel, each channel being allocated a particular pseudo-random sequence and being capable of supplying a first estimation of the received data that corresponds to the user, having used this pseudo-random sequence, this first stage thereby supplying K signals on K outputs,
(sxe2x88x921) multiple access interference suppression stages, each of these stages having K inputs and K outputs, the K inputs of the first interference suppression stage being linked to the K outputs from the first reception stage, and the K inputs of the other interference suppression stages being linked to the K outputs from the interference suppression stage that precedes it,
means of weighting each group of K signals supplied by the K outputs of each of the s stages, the output signals of a stage of row i (i being between 0 and sxe2x88x921) being weighted by a coefficient xcex2i, the coefficients xcex2i being chosen so that a certain quantity should be a minimum,
an adder with s groups of K inputs to receive the s groups of K weighted signals,
a decision means linked to the adder and receiving, for each user, a weighted sum of signals and supplying the corresponding data finally transmitted,
this receiver being characterized by the choice of the weighting coefficients xcex2I being made in the following way:
A being a matrix of NK lines and NK columns in which the elements of the main diagonal are zeros and the elements outside the diagonal reflect the intercorrelations between the signals transmitted by the K users for the N different binary data of the messages transmitted, this matrix A having NK pertinent values xcexj distributed according to a certain distribution p(xcex),
the polynomial expansion xcex10xcex0j+xcex11xcex1j+. . . +xcex1ixcexij+. . . +xcex1sxe2x88x921xcexjsxe2x88x921, where the xcex1i are coefficients, having with the quantity 1/(1+xcexj), a deviation designated e(xcexj) for each pertinent value xcexj,
the quantity that one makes a minimum is the sum, for all pertinent values xcexj of the square of this deviation, weighted by the distribution of the pertinent values, i.e.             ∑              j        =        0                    NK        -        1              ⁢          xe2x80x83        ⁢          p      ⁢              xe2x80x83            ⁢                                    (            λ            )                    ⁡                      [                          e              ⁢                              (                                  λ                  j                                )                                      ]                          2              ,
with in addition the condition xcexa3p(xcexj)e(xcexj)=0, this double constraint defining the coefficients xcex1i,
the weighting coefficients xcex2I modifying each stage of the receiver are derived from coefficients xcex1i by the equations xcex2i=(xe2x88x921)i(xcex1i+xcex1i+1) for values of i going from 0 to sxe2x88x922 and xcex2i=(xe2x88x921)ixcex1i for i=sxe2x88x921.
Preferably, for distribution p(xcex) of the pertinent values for the matrix A, an expression approximately equal to xcex32(xcex+1xe2x88x92a)exp[xe2x88x92xcex3(xcex+1xe2x88x92a)] where xcex3 and a are suitable constants.